# Here we register all our shaders, we'll compile the GLSL
# files to SPIR-V bitfiles for further runtime compilation.
# The executable built will have access to any of them with
# a relative path like shaders/<shader file name>.spv

include(helpers)

# We must create a custom target at this directory level
# due to some f**king cmake conventions.
# (If not so, the add_custom_target() will be of no effect)
# See https://gitlab.kitware.com/cmake/cmake/-/issues/18399
add_custom_target(shaders_prefab ALL)
# (prefab) ui shaders
add_shader(shaders_prefab ui.frag)
add_shader(shaders_prefab ui.vert)
# (prefab) editor shaders
add_shader(shaders_prefab editor_select.frag)
add_shader(shaders_prefab editor_select.vert)
add_shader(shaders_prefab editor_axis.frag)
add_shader(shaders_prefab editor_axis.vert)
add_shader(shaders_prefab default.vert)
add_shader(shaders_prefab default.frag)
# Used to display broken material
add_shader(shaders_prefab broken.vert)
add_shader(shaders_prefab broken.frag)
# deferred shading pipeline
add_shader(shaders_prefab deferred_shading.vert)
add_shader(shaders_prefab deferred_shading.frag)

add_dependencies(prefabs shaders_prefab)
